//	Project:	HexTower
//	File:		TileManager.h
//	Author:		Mustafa Aldoori
//	Purpose:	Tile Manager to hold handle all Tile objects.

#pragma once
#include <vector>
#include "Tile.h"

class CTileManager
{
private:
	CTileManager( void );
	CTileManager( CTileManager& );
	CTileManager& operator=( CTileManager& );
	~CTileManager( void );

	// Tile Render Counter Logic
	int nRenderCounter;

public:
	// Singleton
	static				CTileManager* GetInstance( );

	// Manager Functions
	void		Render();
	void		AddTile( CTile& pTile );
	void		InitTileWorld();
	void		RemoveAllTiles();

protected:
	// Tracking all Tiles and Image (Base) Objects
	std::vector< std::vector< CTile* > >	m_vTileList;
	
};

